#define _CRT_SECURE_NO_WARNINGS 1
//#include<iostream>
//#include<map>
//#include<vector>
//using namespace std;
//
//int main()
//{
//	int n = 0;
//	cin >> n;
//	vector<int> a(n);
//	map<int, int> mp;
//
//	for (int i = 0; i < n; i++)
//	{
//		cin >> a[i];
//		mp[a[i]]++;
//	}
//
//	for (auto it : mp)
//	{
//		cout << it.first << " " << it.second << endl;
//	}
//	cout << endl;
//
//	return 0;
//}



#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<map>  

using namespace std;

long long arr[200010];

int main()
{
	long long t, n, i, j, count;
	map<long long, long long> mp;
	scanf("%lld", &t);
	while (t--)
	{
		count = 0;
		scanf("%lld", &n);
		for (i = 0; i < n; i++)
		{
			scanf("%lld", &arr[i]);
			mp[arr[i]]++;
		}
		sort(arr, arr + n);
		for (i = 0; i < n; i++)
		{
			if (mp[arr[i]])
			{
				for (j = arr[i]; mp[j]; j++)
				{
					mp[j]--;
				}
				count++;
			}
		}
		printf("%lld\n", count);
	}
	return 0;
}


